//
//  UIButton+MKUI.h
//  MKUI
//
//  Created by sushangjin on 15/1/23.
//  Copyright (c) 2015年 sushangjin. All rights reserved.
//

#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@interface UIButton (MKUI)
/**
 *  给不同的状态设置背景颜色,原理是通过生成color对应的图片,然后设置到背景图片中去
 *
 *  @param color 颜色
 *  @param state 状态
 */
- (void)mk_setBackgroundColor:(nullable UIColor *)color forState:(UIControlState)state;

/**
 *  设置按钮的背景颜色,其中normal状态下的颜色为color,highlighted状态下的颜色为color的各个分量颜色值的一半
 *
 *  @param color 颜色
 */
- (void)mk_setBackgroundColorForNormalAndHighlightedState:(nullable UIColor *)color;
@end

@interface UIButton (MKUI_ActionBlock)
typedef void(^MKUIButtonActionBlock)(id __nullable conext);

/**
 *  添加 block 形式的UIControlEventTouchUpInside点击事件
 *
 *  @param block   要执行的 block
 *  @param context block 执行时,传入的上下文对象,不会被 UIButton 持有
 */
- (void)mk_addClickActionBlock:(nullable MKUIButtonActionBlock)block context:(nullable id)context;
@end
NS_ASSUME_NONNULL_END
